package com.sky.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ejlchina.searcher.SearchResult;
import com.sky.dto.DishDTO;
import com.sky.entity.Dish;
import com.sky.vo.DishVO;

import java.util.List;

/**
 * @Author tzl
 * @Date 2023-07-07 18:28:26  星期五
 * @Description: 菜品管理业务层接口
 */
public interface DishService extends IService<Dish> {

    /**
     * 菜品分页查询
     * @param dto 查询信息
     * @return
     */
    SearchResult<DishVO> selectDishList(DishDTO dto);

    /**
     * 菜品条件查询
     * @param dto 查询信息
     * @return
     */
    List<DishVO> selectDishListALl(DishDTO dto);

    /**
     * 查询起售中的所有菜品
     */
    List<DishVO> listWithFlavor(DishDTO dto);

    /**
     * 根据id查询菜品信息
     * @param id 菜品id
     * @return
     */
    DishVO selectDishById(Long id);

    /**
     * 新增菜品
     * @param dto 菜品信息
     * @return
     */
    int insertDish(DishDTO dto);

    /**
     * 修改菜品
     * @param dto 菜品信息
     * @return
     */
    int updateDish(DishDTO dto);

    int updateDishStatus(DishDTO dto);

    /**
     * 删除菜品
     * @param ids id集合
     * @return
     */
    int deleteDishByIds(Long[] ids);
}
